from PyQt6.QtWidgets import QApplication, QWidget, QHBoxLayout, QSizePolicy, QTextEdit


def create_widget_with_layout():
    # 创建一个QWidget
    widget = QWidget()

    # 创建一个水平布局
    layout = QHBoxLayout()

    # 创建一个子QWidget
    child_widget = QTextEdit(widget)
    child_widget.setText("fasdfasdf")

    # 将子QWidget添加到布局中
    layout.addWidget(child_widget)

    # 设置子QWidget的size policy为伸缩，以便它可以撑满可用空间
    child_widget.setSizePolicy(QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding)

    # 将布局设置给QWidget
    widget.setLayout(layout)

    return widget


# 创建应用程序实例
app = QApplication([])

# 创建并展示带有QHBoxLayout的QWidget
main_window = create_widget_with_layout()
main_window.show()

# 运行应用程序
app.exec()